home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / prolog / ai.prl / opnprlg1.hqx / Open Prolog / Open Prolog.rsrc / CODE_15_fileManager.txt < prev    next >
Text File  |  1993-04-15  |  73KB  |  1,315 lines

  1. # near model CODE resource
  2. # entry label at 0x0000
  3. export_359:
  4. entry:
  5. fn00000000:
  6. 00000000  302F 0004                move.w     D0, [A7 + 0x4]
  7. 00000004  0C40 0032                cmpi.w     D0, 0x32 /* '2' */
  8. 00000008  650E                     bcs        +0x10 /* 00000018 */
  9. 0000000A  40E7                     move.w     -[A7], SR
  10. 0000000C  3F3C 0009                move.w     -[A7], 0x9 /* '\t' */
  11. 00000010  487A 00CA                pea.l      [PC + 0xCA /* 000000DC, pstring "illegal event to filemanager" */]
  12. 00000014  4EAD 0B62                jsr        [A5 + 0xB62]
  13. label00000018:
  14. 00000018  D040                     add.w      D0, D0
  15. 0000001A  303B 0006                move.w     D0, [PC + D0.w + 0x6]
  16. 0000001E  4EFB 0002                jmp        [PC + D0.w + 0x2]
  17. 00000022  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  18. 00000026  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  19. 0000002A  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  20. 0000002E  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  21. 00000032  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  22. 00000036  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  23. 0000003A  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  24. 0000003E  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  25. 00000042  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  26. 00000046  0064 0816                ori.w      -[A4], 0x816
  27. 0000004A  084C 07E0                bchg.b     A4, 0xE0
  28. 0000004E  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  29. 00000052  05CA                     bset       A2, D2
  30. 00000054  087C 097A 0BD8           bchg.b     0xD8, 0x7A /* 'z' */
  31. 0000005A  0944                     bchg       D4, D4
  32. 0000005C  0BAA 0B54                bclr       [A2 + 0xB54], D5
  33. 00000060  0DB0 0064                bclr       [A0 + D0.w + 0x64], D6
  34. 00000064  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  35. 00000068  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  36. 0000006C  0064 00D8                ori.w      -[A4], 0xD8
  37. 00000070  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  38. 00000074  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  39. 00000078  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  40. 0000007C  0064 08FC                ori.w      -[A4], 0x8FC
  41. 00000080  0064 0064                ori.w      -[A4], 0x64 /* 'd' */
  42. 00000084  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  43. 00000088  0000 40E7                ori.b      D0, 0xE7
  44. 0000008C  3F3C 0009                move.w     -[A7], 0x9 /* '\t' */
  45. 00000090  487A 0028                pea.l      [PC + 0x28 /* 000000BA, pstring "illegal call code to fileManager" */]
  46. 00000094  4EAD 0B62                jsr        [A5 + 0xB62]
  47. 00000098  2D7C FFFF 8000 0012      move.l     [A6 + 0x12], 0xFFFF8000
  48. 000000A0  4E5E                     unlink     A6
  49. 000000A2  2F57 000A                move.l     [A7 + 0xA], [A7]
  50. 000000A6  4FEF 000A                lea.l      A7, [A7 + 0xA]
  51. 000000AA  4E75                     rts
  52. 000000AC  8B46 494C                pack       D5, D6, 0x494C
  53. 000000B0  454D                     chk.w      D2, A5
  54. 000000B2  414E                     chk.w      D0, A6
  55. 000000B4  4147                     chk.w      D0, D7
  56. 000000B6  4552                     chk.w      D2, [A2]
  57. 000000B8  0000 2069                ori.b      D0, 0x69 /* 'i' */
  58. 000000BC  6C6C                     bge        +0x6E /* 0000012A */
  59. 000000BE  6567                     bcs        +0x69 /* 00000127 */
  60. 000000C0  616C                     bsr        +0x6E /* 0000012E */
  61. 000000C2  2063                     movea.l    A0, -[A3]
  62. 000000C4  616C                     bsr        +0x6E /* 00000132 */
  63. 000000C6  6C20                     bge        +0x22 /* 000000E8 */
  64. 000000C8  636F                     bls        +0x71 /* 00000139 */
  65. 000000CA  6465                     bcc        +0x67 /* 00000131 */
  66. 000000CC  2074 6F20 6669           movea.l    A0, [A4 + 0x6669 + D6 * 8]
  67. 000000D2  6C65                     bge        +0x67 /* 00000139 */
  68. 000000D4  4D61                     chk.w      D6, -[A1]
  69. 000000D6  6E61                     bgt        +0x63 /* 00000139 */
  70. 000000D8  6765                     beq        +0x67 /* 0000013F */
  71. 000000DA  7200                     moveq.l    D1, 0x00
  72. 000000DC  1C69 6C6C                movea.b    A6, [A1 + 0x6C6C]
  73. 000000E0  6567                     bcs        +0x69 /* 00000149 */
  74. 000000E2  616C                     bsr        +0x6E /* 00000150 */
  75. 000000E4  2065                     movea.l    A0, -[A5]
  76. 000000E6  7665                     moveq.l    D3, 0x65
  77. label000000E8:
  78. 000000E8  6E74                     bgt        +0x76 /* 0000015E */
  79. 000000EA  2074 6F20 6669           movea.l    A0, [A4 + 0x6669 + D6 * 8]
  80. 000000F0  6C65                     bge        +0x67 /* 00000157 */
  81. 000000F2  6D61                     blt        +0x63 /* 00000155 */
  82. 000000F4  6E61                     bgt        +0x63 /* 00000157 */
  83. 000000F6  6765                     beq        +0x67 /* 0000015D */
  84. 000000F8  7200                     moveq.l    D1, 0x00
  85. 000000FA  4E56 0000                link       A6, 0
  86. 000000FE  48E7 C080                movem.l    -[A7], D0,D1,A0
  87. 00000102  206D E876                movea.l    A0, [A5 - 0x178A]
  88. 00000106  322D E88E                move.w     D1, [A5 - 0x1772]
  89. 0000010A  5341                     subq.w     D1, 1
  90. label0000010C:
  91. 0000010C  0828 0000 0004           btst.b     [A0 + 0x4], 0x0
  92. 00000112  673E                     beq        +0x40 /* 00000152 */
  93. 00000114  3010                     move.w     D0, [A0]
  94. 00000116  0C30 0001 001B           cmpi.b     [A0 + D0.w + 0x1B], 0x1
  95. 0000011C  6750                     beq        +0x52 /* 0000016E */
  96. 0000011E  48E7 C080                movem.l    -[A7], D0,D1,A0
  97. 00000122  2F3C 0000 000C           move.l     -[A7], 0xC
  98. label00000127: // (misaligned)
  99. 00000128  42A7                     clr.l      -[A7]
  100. label0000012A:
  101. 0000012A  2F28 0006                move.l     -[A7], [A0 + 0x6]
  102. fn0000012E:
  103. 0000012E  3F3C 001B                move.w     -[A7], 0x1B
  104. label00000131: // (misaligned)
  105. fn00000132:
  106. 00000132  4EBA FECC                jsr        [PC - 0x134 /* 00000000 */]
  107. 00000136  201F                     move.l     D0, [A7]+
  108. 00000138  2F3C 0000 000C           move.l     -[A7], 0xC
  109. label00000139: // (misaligned)
  110. 0000013E  42A7                     clr.l      -[A7]
  111. label0000013F: // (misaligned)
  112. 00000140  2F28 0006                move.l     -[A7], [A0 + 0x6]
  113. 00000144  3F3C 001F                move.w     -[A7], 0x1F
  114. 00000148  4EBA FEB6                jsr        [PC - 0x14A /* 00000000 */]
  115. label00000149: // (misaligned)
  116. 0000014C  201F                     move.l     D0, [A7]+
  117. 0000014E  4CDF 0103                movem.l    A0,D1,D0, [A7]+
  118. // begin alternate branch 00000150-00000152
  119. fn00000150:
  120. 00000150  0103                     btst       D3, D0
  121. // end alternate branch 00000150-00000152
  122. fn00000150: // (misaligned)
  123. label00000152:
  124. 00000152  41E8 004C                lea.l      A0, [A0 + 0x4C]
  125. label00000155: // (misaligned)
  126. 00000156  51C9 FFB4                dbf        D1, -0x4E /* 0000010C */
  127. label00000157: // (misaligned)
  128. 0000015A  42AE 0012                clr.l      [A6 + 0x12]
  129. label0000015D: // (misaligned)
  130. label0000015E:
  131. 0000015E  4CDF 0103                movem.l    A0,D1,D0, [A7]+
  132. 00000162  4E5E                     unlink     A6
  133. 00000164  2F57 000A                move.l     [A7 + 0xA], [A7]
  134. 00000168  4FEF 000A                lea.l      A7, [A7 + 0xA]
  135. 0000016C  4E75                     rts
  136. label0000016E:
  137. 0000016E  48E7 C080                movem.l    -[A7], D0,D1,A0
  138. 00000172  2F3C 0000 000C           move.l     -[A7], 0xC
  139. 00000178  42A7                     clr.l      -[A7]
  140. 0000017A  2F28 0006                move.l     -[A7], [A0 + 0x6]
  141. 0000017E  3F3C 001A                move.w     -[A7], 0x1A
  142. 00000182  4EBA FE7C                jsr        [PC - 0x184 /* 00000000 */]
  143. 00000186  201F                     move.l     D0, [A7]+
  144. 00000188  2F3C 0000 000C           move.l     -[A7], 0xC
  145. 0000018E  42A7                     clr.l      -[A7]
  146. 00000190  2F28 0006                move.l     -[A7], [A0 + 0x6]
  147. 00000194  3F3C 001E                move.w     -[A7], 0x1E
  148. 00000198  4EBA FE66                jsr        [PC - 0x19A /* 00000000 */]
  149. 0000019C  201F                     move.l     D0, [A7]+
  150. 0000019E  4CDF 0103                movem.l    A0,D1,D0, [A7]+
  151. 000001A2  60AE                     bra        -0x50 /* 00000152 */
  152. 000001A4  8743 4C45                pack       D3, D3, 0x4C45
  153. 000001A8  414E                     chk.w      D0, A6
  154. 000001AA  5550                     subq.w     [A0], 2
  155. 000001AC  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  156. // begin alternate branch 000001AE-000001B2
  157. fn000001AE:
  158. 000001AE  4E56 FDCE                link       A6, -0x0232
  159. // end alternate branch 000001AE-000001B2
  160. fn000001AE: // (misaligned)
  161. 000001B0  FDCE                     .extension 0xDCE // unimplemented
  162. 000001B2  48E7 E0C0                movem.l    -[A7], D0,D1,D2,A0,A1
  163. 000001B6  3D40 FFFE                move.w     [A6 - 0x2], D0
  164. 000001BA  422E FFFD                clr.b      [A6 - 0x3]
  165. 000001BE  41ED F52C                lea.l      A0, [A5 - 0xAD4]
  166. label000001C2:
  167. 000001C2  4A50                     tst.w      [A0]
  168. 000001C4  6700 0014                beq        +0x16 /* 000001DA */
  169. 000001C8  B050                     cmp.w      D0, [A0]
  170. 000001CA  41E8 0004                lea.l      A0, [A0 + 0x4]
  171. 000001CE  66F2                     bne        -0xC /* 000001C2 */
  172. 000001D0  1D7C 0001 FFFD           move.b     [A6 - 0x3], 0x1
  173. 000001D6  41E8 FFFC                lea.l      A0, [A0 - 0x4]
  174. label000001DA:
  175. 000001DA  3028 0002                move.w     D0, [A0 + 0x2]
  176. 000001DE  3D40 FDCE                move.w     [A6 - 0x232], D0
  177. 000001E2  3F3C 0084                move.w     -[A7], 0x84
  178. 000001E6  3F00                     move.w     -[A7], D0
  179. 000001E8  41EE FEEA                lea.l      A0, [A6 - 0x116]
  180. 000001EC  4218                     clr.b      [A0]+
  181. 000001EE  2F08                     move.l     -[A7], A0
  182. 000001F0  4EAD 0502                jsr        [A5 + 0x502]
  183. 000001F4  2F2D EB4A                move.l     -[A7], [A5 - 0x14B6]
  184. 000001F8  A91F                     trap       SelectWindow
  185. 000001FA  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  186. 000001FE  6708                     beq        +0xA /* 00000208 */
  187. 00000200  487A 0292                pea.l      [PC + 0x292 /* 00000494 */]
  188. 00000204  4EAD 0CD2                jsr        [A5 + 0xCD2]
  189. label00000208:
  190. 00000208  548F                     addq.l     A7, 2
  191. 0000020A  206E 0008                movea.l    A0, [A6 + 0x8]
  192. 0000020E  41E8 000A                lea.l      A0, [A0 + 0xA]
  193. 00000212  2028 0014                move.l     D0, [A0 + 0x14]
  194. 00000216  D0A8 001C                add.l      D0, [A0 + 0x1C]
  195. 0000021A  9090                     sub.l      D0, [A0]
  196. 0000021C  2D40 FFF8                move.l     [A6 - 0x8], D0
  197. 00000220  2D68 0024 FFF4           move.l     [A6 - 0xC], [A0 + 0x24]
  198. 00000226  2D68 0020 FFF0           move.l     [A6 - 0x10], [A0 + 0x20]
  199. 0000022C  2D68 0008 FFEC           move.l     [A6 - 0x14], [A0 + 0x8]
  200. 00000232  2068 000C                movea.l    A0, [A0 + 0xC]
  201. 00000236  2D48 FDE6                move.l     [A6 - 0x21A], A0
  202. 0000023A  A029                     trap       HLock
  203. 0000023C  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  204. 00000240  6708                     beq        +0xA /* 0000024A */
  205. 00000242  487A 0250                pea.l      [PC + 0x250 /* 00000494 */]
  206. 00000246  4EAD 0CD2                jsr        [A5 + 0xCD2]
  207. label0000024A:
  208. 0000024A  548F                     addq.l     A7, 2
  209. 0000024C  3F3C 0084                move.w     -[A7], 0x84
  210. 00000250  3F3C 0001                move.w     -[A7], 0x1
  211. 00000254  41EE FDEA                lea.l      A0, [A6 - 0x216]
  212. 00000258  4218                     clr.b      [A0]+
  213. 0000025A  2F08                     move.l     -[A7], A0
  214. 0000025C  4EAD 0502                jsr        [A5 + 0x502]
  215. 00000260  43EE FDEA                lea.l      A1, [A6 - 0x216]
  216. 00000264  206D E87E                movea.l    A0, [A5 - 0x1782]
  217. 00000268  2F3C 0000 000C           move.l     -[A7], 0xC
  218. 0000026E  42A7                     clr.l      -[A7]
  219. 00000270  2F09                     move.l     -[A7], A1
  220. 00000272  3F3C 0014                move.w     -[A7], 0x14
  221. 00000276  4E90                     jsr        [A0]
  222. 00000278  201F                     move.l     D0, [A7]+
  223. 0000027A  206E 0008                movea.l    A0, [A6 + 0x8]
  224. 0000027E  2F28 0006                move.l     -[A7], [A0 + 0x6]
  225. 00000282  486E FDEA                pea.l      [A6 - 0x216]
  226. 00000286  4EAD 0882                jsr        [A5 + 0x882]
  227. 0000028A  43EE FDEA                lea.l      A1, [A6 - 0x216]
  228. 0000028E  206D E87E                movea.l    A0, [A5 - 0x1782]
  229. 00000292  2F3C 0000 000C           move.l     -[A7], 0xC
  230. 00000298  42A7                     clr.l      -[A7]
  231. 0000029A  2F09                     move.l     -[A7], A1
  232. 0000029C  3F3C 0014                move.w     -[A7], 0x14
  233. 000002A0  4E90                     jsr        [A0]
  234. 000002A2  201F                     move.l     D0, [A7]+
  235. 000002A4  3F3C 0084                move.w     -[A7], 0x84
  236. 000002A8  3F3C 0002                move.w     -[A7], 0x2
  237. 000002AC  41EE FDEA                lea.l      A0, [A6 - 0x216]
  238. 000002B0  4218                     clr.b      [A0]+
  239. 000002B2  2F08                     move.l     -[A7], A0
  240. 000002B4  4EAD 0502                jsr        [A5 + 0x502]
  241. 000002B8  43EE FDEA                lea.l      A1, [A6 - 0x216]
  242. 000002BC  206D E87E                movea.l    A0, [A5 - 0x1782]
  243. 000002C0  2F3C 0000 000C           move.l     -[A7], 0xC
  244. 000002C6  42A7                     clr.l      -[A7]
  245. 000002C8  2F09                     move.l     -[A7], A1
  246. 000002CA  3F3C 0014                move.w     -[A7], 0x14
  247. 000002CE  4E90                     jsr        [A0]
  248. 000002D0  201F                     move.l     D0, [A7]+
  249. 000002D2  206E 0008                movea.l    A0, [A6 + 0x8]
  250. 000002D6  41E8 000A                lea.l      A0, [A0 + 0xA]
  251. 000002DA  2028 0014                move.l     D0, [A0 + 0x14]
  252. 000002DE  D0A8 001C                add.l      D0, [A0 + 0x1C]
  253. 000002E2  D0AE FFF4                add.l      D0, [A6 - 0xC]
  254. 000002E6  41EE FDEA                lea.l      A0, [A6 - 0x216]
  255. 000002EA  4218                     clr.b      [A0]+
  256. 000002EC  4267                     clr.w      -[A7]
  257. 000002EE  A9EE                     trap       Pack7/DecStr68K
  258. 000002F0  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  259. 000002F4  6708                     beq        +0xA /* 000002FE */
  260. 000002F6  487A 019C                pea.l      [PC + 0x19C /* 00000494 */]
  261. 000002FA  4EAD 0CD2                jsr        [A5 + 0xCD2]
  262. label000002FE:
  263. 000002FE  548F                     addq.l     A7, 2
  264. 00000300  206D E87E                movea.l    A0, [A5 - 0x1782]
  265. 00000304  43EE FDEA                lea.l      A1, [A6 - 0x216]
  266. 00000308  2F3C 0000 000C           move.l     -[A7], 0xC
  267. 0000030E  42A7                     clr.l      -[A7]
  268. 00000310  2F09                     move.l     -[A7], A1
  269. 00000312  3F3C 0014                move.w     -[A7], 0x14
  270. 00000316  4E90                     jsr        [A0]
  271. 00000318  201F                     move.l     D0, [A7]+
  272. 0000031A  3F3C 0084                move.w     -[A7], 0x84
  273. 0000031E  3F3C 0003                move.w     -[A7], 0x3
  274. 00000322  41EE FDEA                lea.l      A0, [A6 - 0x216]
  275. 00000326  4218                     clr.b      [A0]+
  276. 00000328  2F08                     move.l     -[A7], A0
  277. 0000032A  4EAD 0502                jsr        [A5 + 0x502]
  278. 0000032E  206D E87E                movea.l    A0, [A5 - 0x1782]
  279. 00000332  43EE FDEA                lea.l      A1, [A6 - 0x216]
  280. 00000336  2F3C 0000 000C           move.l     -[A7], 0xC
  281. 0000033C  42A7                     clr.l      -[A7]
  282. 0000033E  2F09                     move.l     -[A7], A1
  283. 00000340  3F3C 0014                move.w     -[A7], 0x14
  284. 00000344  4E90                     jsr        [A0]
  285. 00000346  201F                     move.l     D0, [A7]+
  286. 00000348  7000                     moveq.l    D0, 0x00
  287. 0000034A  302E FDCE                move.w     D0, [A6 - 0x232]
  288. 0000034E  41EE FDEA                lea.l      A0, [A6 - 0x216]
  289. 00000352  4218                     clr.b      [A0]+
  290. 00000354  4267                     clr.w      -[A7]
  291. 00000356  A9EE                     trap       Pack7/DecStr68K
  292. 00000358  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  293. 0000035C  6708                     beq        +0xA /* 00000366 */
  294. 0000035E  487A 0134                pea.l      [PC + 0x134 /* 00000494 */]
  295. 00000362  4EAD 0CD2                jsr        [A5 + 0xCD2]
  296. label00000366:
  297. 00000366  548F                     addq.l     A7, 2
  298. 00000368  206D E87E                movea.l    A0, [A5 - 0x1782]
  299. 0000036C  43EE FDEA                lea.l      A1, [A6 - 0x216]
  300. 00000370  2F3C 0000 000C           move.l     -[A7], 0xC
  301. 00000376  42A7                     clr.l      -[A7]
  302. 00000378  2F09                     move.l     -[A7], A1
  303. 0000037A  3F3C 0014                move.w     -[A7], 0x14
  304. 0000037E  4E90                     jsr        [A0]
  305. 00000380  201F                     move.l     D0, [A7]+
  306. 00000382  3F3C 0084                move.w     -[A7], 0x84
  307. 00000386  3F3C 0004                move.w     -[A7], 0x4
  308. 0000038A  41EE FDEA                lea.l      A0, [A6 - 0x216]
  309. 0000038E  4218                     clr.b      [A0]+
  310. 00000390  2F08                     move.l     -[A7], A0
  311. 00000392  4EAD 0502                jsr        [A5 + 0x502]
  312. 00000396  206D E87E                movea.l    A0, [A5 - 0x1782]
  313. 0000039A  43EE FDEA                lea.l      A1, [A6 - 0x216]
  314. 0000039E  2F3C 0000 000C           move.l     -[A7], 0xC
  315. 000003A4  42A7                     clr.l      -[A7]
  316. 000003A6  2F09                     move.l     -[A7], A1
  317. 000003A8  3F3C 0014                move.w     -[A7], 0x14
  318. 000003AC  4E90                     jsr        [A0]
  319. 000003AE  201F                     move.l     D0, [A7]+
  320. 000003B0  082D 0000 F130           btst.b     [A5 - 0xED0], 0x0
  321. 000003B6  6700 007C                beq        +0x7E /* 00000434 */
  322. 000003BA  206E FDE6                movea.l    A0, [A6 - 0x21A]
  323. 000003BE  2250                     movea.l    A1, [A0]
  324. 000003C0  D3EE FFF8                add.l      A1, [A6 - 0x8]
  325. 000003C4  242E FFF4                move.l     D2, [A6 - 0xC]
  326. 000003C8  671C                     beq        +0x1E /* 000003E6 */
  327. label000003CA:
  328. 000003CA  1219                     move.b     D1, [A1]+
  329. 000003CC  206D E87E                movea.l    A0, [A5 - 0x1782]
  330. 000003D0  2F3C 0000 000C           move.l     -[A7], 0xC
  331. 000003D6  42A7                     clr.l      -[A7]
  332. 000003D8  2F01                     move.l     -[A7], D1
  333. 000003DA  3F3C 0013                move.w     -[A7], 0x13
  334. 000003DE  4E90                     jsr        [A0]
  335. 000003E0  201F                     move.l     D0, [A7]+
  336. 000003E2  5382                     subq.l     D2, 1
  337. 000003E4  66E4                     bne        -0x1A /* 000003CA */
  338. label000003E6:
  339. 000003E6  43EE FEEA                lea.l      A1, [A6 - 0x116]
  340. 000003EA  206D E87E                movea.l    A0, [A5 - 0x1782]
  341. 000003EE  2F3C 0000 000C           move.l     -[A7], 0xC
  342. 000003F4  42A7                     clr.l      -[A7]
  343. 000003F6  2F09                     move.l     -[A7], A1
  344. 000003F8  3F3C 0014                move.w     -[A7], 0x14
  345. 000003FC  4E90                     jsr        [A0]
  346. 000003FE  201F                     move.l     D0, [A7]+
  347. 00000400  206E FDE6                movea.l    A0, [A6 - 0x21A]
  348. 00000404  2250                     movea.l    A1, [A0]
  349. 00000406  D3EE FFF8                add.l      A1, [A6 - 0x8]
  350. 0000040A  D3EE FFF4                add.l      A1, [A6 - 0xC]
  351. 0000040E  242E FFF0                move.l     D2, [A6 - 0x10]
  352. 00000412  94AE FFF4                sub.l      D2, [A6 - 0xC]
  353. 00000416  671C                     beq        +0x1E /* 00000434 */
  354. label00000418:
  355. 00000418  1219                     move.b     D1, [A1]+
  356. 0000041A  206D E87E                movea.l    A0, [A5 - 0x1782]
  357. 0000041E  2F3C 0000 000C           move.l     -[A7], 0xC
  358. 00000424  42A7                     clr.l      -[A7]
  359. 00000426  2F01                     move.l     -[A7], D1
  360. 00000428  3F3C 0013                move.w     -[A7], 0x13
  361. 0000042C  4E90                     jsr        [A0]
  362. 0000042E  201F                     move.l     D0, [A7]+
  363. 00000430  5382                     subq.l     D2, 1
  364. 00000432  66E4                     bne        -0x1A /* 00000418 */
  365. label00000434:
  366. 00000434  206E FDE6                movea.l    A0, [A6 - 0x21A]
  367. 00000438  A02A                     trap       HUnlock
  368. 0000043A  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  369. 0000043E  6708                     beq        +0xA /* 00000448 */
  370. 00000440  487A 0052                pea.l      [PC + 0x52 /* 00000494 */]
  371. 00000444  4EAD 0CD2                jsr        [A5 + 0xCD2]
  372. label00000448:
  373. 00000448  548F                     addq.l     A7, 2
  374. 0000044A  302E FFFE                move.w     D0, [A6 - 0x2]
  375. 0000044E  48C0                     ext.l      D0
  376. 00000450  082E 0000 FFFD           btst.b     [A6 - 0x3], 0x0
  377. 00000456  6700 000E                beq        +0x10 /* 00000466 */
  378. 0000045A  41FA 001E                lea.l      A0, [PC + 0x1E /* 0000047A */]
  379. label0000045E:
  380. 0000045E  3218                     move.w     D1, [A0]+
  381. 00000460  671E                     beq        +0x20 /* 00000480 */
  382. 00000462  B240                     cmp.w      D1, D0
  383. 00000464  66F8                     bne        -0x6 /* 0000045E */
  384. label00000466:
  385. 00000466  4CDF 0307                movem.l    A1,A0,D2,D1,D0, [A7]+
  386. 0000046A  4E5E                     unlink     A6
  387. 0000046C  2F57 0004                move.l     [A7 + 0x4], [A7]
  388. 00000470  4FEF 0004                lea.l      A7, [A7 + 0x4]
  389. 00000474  003C 0001                ori.b      ccr, 1
  390. 00000478  4E75                     rts
  391. 0000047A  8007                     or.b       D0, D7
  392. 0000047C  8014                     or.b       D0, [A4]
  393. 0000047E  0000 4CDF                ori.b      D0, 0xDF
  394. // begin alternate branch 00000480-00000484
  395. label00000480:
  396. 00000480  4CDF 0307                movem.l    A1,A0,D2,D1,D0, [A7]+
  397. // end alternate branch 00000480-00000484
  398. label00000480: // (misaligned)
  399. 00000482  0307                     btst       D7, D1
  400. 00000484  4E5E                     unlink     A6
  401. 00000486  2F57 0004                move.l     [A7 + 0x4], [A7]
  402. 0000048A  4FEF 0004                lea.l      A7, [A7 + 0x4]
  403. 0000048E  023C 00FE                andi.b     ccr, 254
  404. 00000492  4E75                     rts
  405. 00000494  8D46 4552                pack       D6, D6, 0x4552
  406. 00000498  524F                     addq.w     A7, 1
  407. 0000049A  5248                     addq.w     A0, 1
  408. 0000049C  414E                     chk.w      D0, A6
  409. 0000049E  444C                     neg.w      A4
  410. 000004A0  4552                     chk.w      D2, [A2]
  411. 000004A2  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  412. // begin alternate branch 000004A4-000004A8
  413. fn000004A4:
  414. 000004A4  4E56 FFF6                link       A6, -0x000A
  415. // end alternate branch 000004A4-000004A8
  416. fn000004A4: // (misaligned)
  417. 000004A6  FFF6                     .extension 0xFF6 // unimplemented
  418. 000004A8  48E7 70E0                movem.l    -[A7], D1,D2,D3,A0,A1,A2
  419. 000004AC  206E 0008                movea.l    A0, [A6 + 0x8]
  420. 000004B0  0828 0000 0040           btst.b     [A0 + 0x40], 0x0
  421. 000004B6  670A                     beq        +0xC /* 000004C2 */
  422. 000004B8  203C FFFF 8015           move.l     D0, 0xFFFF8015
  423. 000004BE  6000 0104                bra        +0x106 /* 000005C4 */
  424. label000004C2:
  425. 000004C2  42AE FFF6                clr.l      [A6 - 0xA]
  426. 000004C6  263C 0000 2800           move.l     D3, 0x2800 /* '(\0' */
  427. 000004CC  206E 0008                movea.l    A0, [A6 + 0x8]
  428. 000004D0  2068 0016                movea.l    A0, [A0 + 0x16]
  429. 000004D4  A029                     trap       HLock
  430. 000004D6  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  431. 000004DA  6708                     beq        +0xA /* 000004E4 */
  432. 000004DC  487A 0106                pea.l      [PC + 0x106 /* 000005E4 */]
  433. 000004E0  4EAD 0CD2                jsr        [A5 + 0xCD2]
  434. label000004E4:
  435. 000004E4  548F                     addq.l     A7, 2
  436. 000004E6  2250                     movea.l    A1, [A0]
  437. 000004E8  2801                     move.l     D4, D1
  438. 000004EA  206E 0008                movea.l    A0, [A6 + 0x8]
  439. 000004EE  41E8 000A                lea.l      A0, [A0 + 0xA]
  440. 000004F2  2028 0014                move.l     D0, [A0 + 0x14]
  441. 000004F6  D0A8 001C                add.l      D0, [A0 + 0x1C]
  442. 000004FA  9090                     sub.l      D0, [A0]
  443. 000004FC  661A                     bne        +0x1C /* 00000518 */
  444. 000004FE  0CA8 0000 2800 0004      cmpi.l     [A0 + 0x4], 0x2800 /* '(\0' */
  445. 00000506  6610                     bne        +0x12 /* 00000518 */
  446. 00000508  203C FFFF 8017           move.l     D0, 0xFFFF8017
  447. 0000050E  2168 0004 0024           move.l     [A0 + 0x24], [A0 + 0x4]
  448. 00000514  6000 0090                bra        +0x92 /* 000005A6 */
  449. label00000518:
  450. 00000518  4A80                     tst.l      D0
  451. 0000051A  6B00 00BA                bmi        +0xBC /* 000005D6 */
  452. 0000051E  B0A8 0004                cmp.l      D0, [A0 + 0x4]
  453. 00000522  6A30                     bpl        +0x32 /* 00000554 */
  454. 00000524  2400                     move.l     D2, D0
  455. 00000526  5342                     subq.w     D2, 1
  456. 00000528  6B14                     bmi        +0x16 /* 0000053E */
  457. 0000052A  2449                     movea.l    A2, A1
  458. 0000052C  720D                     moveq.l    D1, 0x0D
  459. label0000052E:
  460. 0000052E  B21A                     cmp.b      D1, [A2]+
  461. 00000530  57CA FFFC                dbeq       D2, -0x6 /* 0000052E */
  462. 00000534  6608                     bne        +0xA /* 0000053E */
  463. 00000536  52A8 0008                addq.l     [A0 + 0x8], 1
  464. 0000053A  51CA FFF2                dbf        D2, -0x10 /* 0000052E */
  465. label0000053E:
  466. 0000053E  2428 0004                move.l     D2, [A0 + 0x4]
  467. 00000542  9480                     sub.l      D2, D0
  468. 00000544  2D42 FFF6                move.l     [A6 - 0xA], D2
  469. 00000548  9682                     sub.l      D3, D2
  470. 0000054A  41F1 0800                lea.l      A0, [A1 + D0]
  471. label0000054E:
  472. 0000054E  12D8                     move.b     [A1]+, [A0]+
  473. 00000550  5382                     subq.l     D2, 1
  474. 00000552  66FA                     bne        -0x4 /* 0000054E */
  475. label00000554:
  476. 00000554  206E 0008                movea.l    A0, [A6 + 0x8]
  477. 00000558  3010                     move.w     D0, [A0]
  478. 0000055A  41F0 0000                lea.l      A0, [A0 + D0.w]
  479. 0000055E  2149 0020                move.l     [A0 + 0x20], A1
  480. 00000562  2143 0024                move.l     [A0 + 0x24], D3
  481. 00000566  A002                     trap       Read
  482. 00000568  0C40 0000                cmpi.w     D0, 0x0
  483. 0000056C  6712                     beq        +0x14 /* 00000580 */
  484. 0000056E  0C40 FFD9                cmpi.w     D0, 0xFFD9
  485. 00000572  6600 0068                bne        +0x6A /* 000005DC */
  486. 00000576  226E 0008                movea.l    A1, [A6 + 0x8]
  487. 0000057A  137C 0001 0040           move.b     [A1 + 0x40], 0x1
  488. label00000580:
  489. 00000580  2028 0028                move.l     D0, [A0 + 0x28]
  490. 00000584  D0AE FFF6                add.l      D0, [A6 - 0xA]
  491. 00000588  206E 0008                movea.l    A0, [A6 + 0x8]
  492. 0000058C  41E8 000A                lea.l      A0, [A0 + 0xA]
  493. 00000590  2228 0014                move.l     D1, [A0 + 0x14]
  494. 00000594  D2A8 001C                add.l      D1, [A0 + 0x1C]
  495. 00000598  2081                     move.l     [A0], D1
  496. 0000059A  2140 0004                move.l     [A0 + 0x4], D0
  497. 0000059E  D081                     add.l      D0, D1
  498. 000005A0  2140 0018                move.l     [A0 + 0x18], D0
  499. 000005A4  7000                     moveq.l    D0, 0x00
  500. label000005A6:
  501. 000005A6  2600                     move.l     D3, D0
  502. 000005A8  206E 0008                movea.l    A0, [A6 + 0x8]
  503. 000005AC  2068 0016                movea.l    A0, [A0 + 0x16]
  504. 000005B0  A02A                     trap       HUnlock
  505. 000005B2  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  506. 000005B6  6708                     beq        +0xA /* 000005C0 */
  507. 000005B8  487A 002A                pea.l      [PC + 0x2A /* 000005E4 */]
  508. 000005BC  4EAD 0CD2                jsr        [A5 + 0xCD2]
  509. label000005C0:
  510. 000005C0  548F                     addq.l     A7, 2
  511. 000005C2  2003                     move.l     D0, D3
  512. label000005C4:
  513. 000005C4  4CDF 070E                movem.l    A2,A1,A0,D3,D2,D1, [A7]+
  514. 000005C8  4E5E                     unlink     A6
  515. 000005CA  2F57 0004                move.l     [A7 + 0x4], [A7]
  516. 000005CE  4FEF 0004                lea.l      A7, [A7 + 0x4]
  517. 000005D2  4A80                     tst.l      D0
  518. 000005D4  4E75                     rts
  519. label000005D6:
  520. 000005D6  303C 8018                move.w     D0, 0x8018
  521. 000005DA  60CA                     bra        -0x34 /* 000005A6 */
  522. label000005DC:
  523. 000005DC  203C FFFF 8013           move.l     D0, 0xFFFF8013
  524. 000005E2  60C2                     bra        -0x3C /* 000005A6 */
  525. 000005E4  8546 5245                pack       D2, D6, 0x5245
  526. 000005E8  4144                     chk.w      D0, D4
  527. 000005EA  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  528. 000005EE  FFFE                     .extension 0xFFE // unimplemented
  529. 000005F0  4CEA 0003 0040           movem.l    D1,D0, [A2 + 0x40]
  530. 000005F6  0C80 0000 0018           cmpi.l     D0, 0x18
  531. 000005FC  6712                     beq        +0x14 /* 00000610 */
  532. label000005FE:
  533. 000005FE  40E7                     move.w     -[A7], SR
  534. 00000600  3F3C 0009                move.w     -[A7], 0x9 /* '\t' */
  535. 00000604  487A 00B8                pea.l      [PC + 0xB8 /* 000006BE, pstring "funny input style request code" */]
  536. 00000608  4EAD 0B62                jsr        [A5 + 0xB62]
  537. 0000060C  6000 008A                bra        +0x8C /* 00000698 */
  538. label00000610:
  539. 00000610  41ED F390                lea.l      A0, [A5 - 0xC70]
  540. label00000614:
  541. 00000614  4A90                     tst.l      [A0]
  542. 00000616  67E6                     beq        -0x18 /* 000005FE */
  543. 00000618  B298                     cmp.l      D1, [A0]+
  544. 0000061A  41E8 0002                lea.l      A0, [A0 + 0x2]
  545. 0000061E  66F4                     bne        -0xA /* 00000614 */
  546. 00000620  3D68 FFFE FFFE           move.w     [A6 - 0x2], [A0 - 0x2]
  547. 00000626  206D E882                movea.l    A0, [A5 - 0x177E]
  548. 0000062A  2028 002A                move.l     D0, [A0 + 0x2A]
  549. 0000062E  D1A8 0026                add.l      [A0 + 0x26], D0
  550. 00000632  316E FFFE 003E           move.w     [A0 + 0x3E], [A6 - 0x2]
  551. label00000638:
  552. 00000638  206D E882                movea.l    A0, [A5 - 0x177E]
  553. 0000063C  4868 000A                pea.l      [A0 + 0xA]
  554. 00000640  4EAD 0EF2                jsr        [A5 + 0xEF2]
  555. 00000644  0C80 0000 0000           cmpi.l     D0, 0x0
  556. 0000064A  6700 0054                beq        +0x56 /* 000006A0 */
  557. 0000064E  0C80 FFFF 8014           cmpi.l     D0, 0xFFFF8014
  558. 00000654  6700 004C                beq        +0x4E /* 000006A2 */
  559. 00000658  0C80 FFFF 8001           cmpi.l     D0, 0xFFFF8001
  560. 0000065E  671E                     beq        +0x20 /* 0000067E */
  561. 00000660  0C80 FFFF 8009           cmpi.l     D0, 0xFFFF8009
  562. 00000666  6620                     bne        +0x22 /* 00000688 */
  563. 00000668  0C6E 000C FFFE           cmpi.w     [A6 - 0x2], 0xC
  564. 0000066E  6724                     beq        +0x26 /* 00000694 */
  565. label00000670:
  566. 00000670  206D E882                movea.l    A0, [A5 - 0x177E]
  567. 00000674  2028 002A                move.l     D0, [A0 + 0x2A]
  568. 00000678  D1A8 0026                add.l      [A0 + 0x26], D0
  569. 0000067C  60BA                     bra        -0x44 /* 00000638 */
  570. label0000067E:
  571. 0000067E  2F2D E882                move.l     -[A7], [A5 - 0x177E]
  572. 00000682  4EBA FE20                jsr        [PC - 0x1E0 /* 000004A4 */]
  573. 00000686  67B0                     beq        -0x4E /* 00000638 */
  574. label00000688:
  575. 00000688  2F2D E882                move.l     -[A7], [A5 - 0x177E]
  576. 0000068C  4EBA FB20                jsr        [PC - 0x4E0 /* 000001AE */]
  577. 00000690  64DE                     bcc        -0x20 /* 00000670 */
  578. 00000692  600E                     bra        +0x10 /* 000006A2 */
  579. label00000694:
  580. 00000694  7004                     moveq.l    D0, 0x04
  581. 00000696  600A                     bra        +0xC /* 000006A2 */
  582. label00000698:
  583. 00000698  203C FFFF 8000           move.l     D0, 0xFFFF8000
  584. 0000069E  6002                     bra        +0x4 /* 000006A2 */
  585. label000006A0:
  586. 000006A0  7000                     moveq.l    D0, 0x00
  587. label000006A2:
  588. 000006A2  2D40 0012                move.l     [A6 + 0x12], D0
  589. 000006A6  4E5E                     unlink     A6
  590. 000006A8  2F57 000A                move.l     [A7 + 0xA], [A7]
  591. 000006AC  4FEF 000A                lea.l      A7, [A7 + 0xA]
  592. 000006B0  4E75                     rts
  593. 000006B2  8952                     or.w       [A2], D4
  594. 000006B4  4541                     chk.w      D2, D1
  595. 000006B6  4441                     neg.w      D1
  596. 000006B8  5445                     addq.w     D5, 2
  597. 000006BA  524D                     addq.w     A5, 1
  598. 000006BC  0000 1E66                ori.b      D0, 0x66 /* 'f' */
  599. 000006C0  756E                     moveq.l    D2, 0x6E
  600. 000006C2  6E79                     bgt        +0x7B /* 0000073D */
  601. 000006C4  2069 6E70                movea.l    A0, [A1 + 0x6E70]
  602. 000006C8  7574                     moveq.l    D2, 0x74
  603. 000006CA  2073 7479                movea.l    A0, [A3 + D7.w * 4 + 0x79]
  604. 000006CE  6C65                     bge        +0x67 /* 00000735 */
  605. 000006D0  2072 6571 7565 7374      movea.l    A0, [[A2 + 0x75657374]]
  606. 000006D8  2063                     movea.l    A0, -[A3]
  607. 000006DA  6F64                     ble        +0x66 /* 00000740 */
  608. 000006DC  6500 4E56                bcs        +0x4E58 /* 00005534 */
  609. // begin alternate branch 000006DE-000006E2
  610. fn000006DE:
  611. 000006DE  4E56 FFF4                link       A6, -0x000C
  612. // end alternate branch 000006DE-000006E2
  613. fn000006DE: // (misaligned)
  614. 000006E0  FFF4                     .extension 0xFF4 // unimplemented
  615. 000006E2  48E7 78E0                movem.l    -[A7], D1,D2,D3,D4,A0,A1,A2
  616. 000006E6  202D E886                move.l     D0, [A5 - 0x177A]
  617. 000006EA  6700 0080                beq        +0x82 /* 0000076C */
  618. 000006EE  2440                     movea.l    A2, D0
  619. label000006F0:
  620. 000006F0  263C 0000 0400           move.l     D3, 0x400
  621. 000006F6  96AA 001A                sub.l      D3, [A2 + 0x1A]
  622. 000006FA  660A                     bne        +0xC /* 00000706 */
  623. 000006FC  4EBA 008E                jsr        [PC + 0x8E /* 0000078C */]
  624. 00000700  6600 0070                bne        +0x72 /* 00000772 */
  625. 00000704  60EA                     bra        -0x14 /* 000006F0 */
  626. label00000706:
  627. 00000706  202E 000C                move.l     D0, [A6 + 0xC]
  628. 0000070A  6700 005C                beq        +0x5E /* 00000768 */
  629. 0000070E  B680                     cmp.l      D3, D0
  630. 00000710  6B02                     bmi        +0x4 /* 00000714 */
  631. 00000712  2600                     move.l     D3, D0
  632. label00000714:
  633. 00000714  97AE 000C                sub.l      [A6 + 0xC], D3
  634. 00000718  206A 0016                movea.l    A0, [A2 + 0x16]
  635. 0000071C  A029                     trap       HLock
  636. 0000071E  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  637. 00000722  6708                     beq        +0xA /* 0000072C */
  638. 00000724  487A 005C                pea.l      [PC + 0x5C /* 00000782 */]
  639. 00000728  4EAD 0CD2                jsr        [A5 + 0xCD2]
  640. label0000072C:
  641. 0000072C  548F                     addq.l     A7, 2
  642. 0000072E  2250                     movea.l    A1, [A0]
  643. 00000730  202A 001A                move.l     D0, [A2 + 0x1A]
  644. 00000734  43F1 0800                lea.l      A1, [A1 + D0]
  645. label00000735: // (misaligned)
  646. 00000738  206E 0008                movea.l    A0, [A6 + 0x8]
  647. 0000073C  2003                     move.l     D0, D3
  648. label0000073D: // (misaligned)
  649. label0000073E:
  650. 0000073E  12D8                     move.b     [A1]+, [A0]+
  651. label00000740:
  652. 00000740  5380                     subq.l     D0, 1
  653. 00000742  66FA                     bne        -0x4 /* 0000073E */
  654. 00000744  2D48 0008                move.l     [A6 + 0x8], A0
  655. 00000748  D7AA 001A                add.l      [A2 + 0x1A], D3
  656. 0000074C  206A 0016                movea.l    A0, [A2 + 0x16]
  657. 00000750  A02A                     trap       HUnlock
  658. 00000752  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  659. 00000756  6708                     beq        +0xA /* 00000760 */
  660. 00000758  487A 0028                pea.l      [PC + 0x28 /* 00000782 */]
  661. 0000075C  4EAD 0CD2                jsr        [A5 + 0xCD2]
  662. label00000760:
  663. 00000760  548F                     addq.l     A7, 2
  664. 00000762  202E 000C                move.l     D0, [A6 + 0xC]
  665. 00000766  6688                     bne        -0x76 /* 000006F0 */
  666. label00000768:
  667. 00000768  7000                     moveq.l    D0, 0x00
  668. 0000076A  6006                     bra        +0x8 /* 00000772 */
  669. label0000076C:
  670. 0000076C  203C FFFF 800B           move.l     D0, 0xFFFF800B
  671. // begin alternate branch 00000770-00000772
  672. label00000770:
  673. 00000770  800B                     or.b       D0, A3
  674. // end alternate branch 00000770-00000772
  675. label00000770: // (misaligned)
  676. label00000772:
  677. 00000772  4CDF 071E                movem.l    A2,A1,A0,D4,D3,D2,D1, [A7]+
  678. 00000776  4E5E                     unlink     A6
  679. 00000778  2F57 0008                move.l     [A7 + 0x8], [A7]
  680. 0000077C  4FEF 0008                lea.l      A7, [A7 + 0x8]
  681. 00000780  4E75                     rts
  682. 00000782  8646                     or.w       D3, D6
  683. 00000784  5752                     subq.w     [A2], 3
  684. 00000786  4954                     chk.w      D4, [A4]
  685. 00000788  4520                     .invalid   2, -[A0] // invalid opcode 4 with b == 4
  686. 0000078A  0000 48E7                ori.b      D0, 0xE7
  687. // begin alternate branch 0000078C-00000790
  688. fn0000078C:
  689. 0000078C  48E7 60E0                movem.l    -[A7], D1,D2,A0,A1,A2
  690. // end alternate branch 0000078C-00000790
  691. fn0000078C: // (misaligned)
  692. 0000078E  60E0                     bra        -0x1E /* 00000770 */
  693. 00000790  202D E886                move.l     D0, [A5 - 0x177A]
  694. 00000794  6700 0058                beq        +0x5A /* 000007EE */
  695. 00000798  2440                     movea.l    A2, D0
  696. 0000079A  206A 0016                movea.l    A0, [A2 + 0x16]
  697. 0000079E  A029                     trap       HLock
  698. 000007A0  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  699. 000007A4  6708                     beq        +0xA /* 000007AE */
  700. 000007A6  487A 004C                pea.l      [PC + 0x4C /* 000007F4 */]
  701. 000007AA  4EAD 0CD2                jsr        [A5 + 0xCD2]
  702. label000007AE:
  703. 000007AE  548F                     addq.l     A7, 2
  704. 000007B0  2250                     movea.l    A1, [A0]
  705. 000007B2  3012                     move.w     D0, [A2]
  706. 000007B4  41F2 0000                lea.l      A0, [A2 + D0.w]
  707. 000007B8  216A 001A 0024           move.l     [A0 + 0x24], [A2 + 0x1A]
  708. 000007BE  2149 0020                move.l     [A0 + 0x20], A1
  709. 000007C2  A003                     trap       Write
  710. 000007C4  48C0                     ext.l      D0
  711. 000007C6  4A80                     tst.l      D0
  712. 000007C8  6600 0024                bne        +0x26 /* 000007EE */
  713. 000007CC  206A 0016                movea.l    A0, [A2 + 0x16]
  714. 000007D0  A02A                     trap       HUnlock
  715. 000007D2  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  716. 000007D6  6708                     beq        +0xA /* 000007E0 */
  717. 000007D8  487A 001A                pea.l      [PC + 0x1A /* 000007F4 */]
  718. 000007DC  4EAD 0CD2                jsr        [A5 + 0xCD2]
  719. label000007E0:
  720. 000007E0  548F                     addq.l     A7, 2
  721. 000007E2  42AA 001A                clr.l      [A2 + 0x1A]
  722. 000007E6  7000                     moveq.l    D0, 0x00
  723. 000007E8  4CDF 0706                movem.l    A2,A1,A0,D2,D1, [A7]+
  724. 000007EC  4E75                     rts
  725. label000007EE:
  726. 000007EE  4CDF 0706                movem.l    A2,A1,A0,D2,D1, [A7]+
  727. 000007F2  4E75                     rts
  728. 000007F4  8B46 5752                pack       D5, D6, 0x5752
  729. 000007F8  4954                     chk.w      D4, [A4]
  730. 000007FA  4546                     chk.w      D2, D6
  731. 000007FC  4C55 5348                movem.l    A6,A4,A1,A0,D6,D3, [A5]
  732. 00000800  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  733. 00000804  FFFE                     .extension 0xFFE // unimplemented
  734. 00000806  40E7                     move.w     -[A7], SR
  735. 00000808  3F3C 0009                move.w     -[A7], 0x9 /* '\t' */
  736. 0000080C  487A 001E                pea.l      [PC + 0x1E /* 0000082C, pstring "file flush" */]
  737. 00000810  4EAD 0B62                jsr        [A5 + 0xB62]
  738. 00000814  42AE 0012                clr.l      [A6 + 0x12]
  739. 00000818  4E5E                     unlink     A6
  740. 0000081A  2F57 000A                move.l     [A7 + 0xA], [A7]
  741. 0000081E  4FEF 000A                lea.l      A7, [A7 + 0xA]
  742. 00000822  4E75                     rts
  743. 00000824  8546 4C55                pack       D2, D6, 0x4C55
  744. 00000828  5348                     subq.w     A0, 1
  745. 0000082A  0000 0A66                ori.b      D0, 0x66 /* 'f' */
  746. 0000082E  696C                     bvs        +0x6E /* 0000089C */
  747. 00000830  6520                     bcs        +0x22 /* 00000852 */
  748. 00000832  666C                     bne        +0x6E /* 000008A0 */
  749. 00000834  7573                     moveq.l    D2, 0x73
  750. 00000836  6800 4E56                bvc        +0x4E58 /* 0000568E */
  751. 0000083A  FFFE                     .extension 0xFFE // unimplemented
  752. 0000083C  202E 000A                move.l     D0, [A6 + 0xA]
  753. 00000840  1D40 FFFE                move.b     [A6 - 0x2], D0
  754. 00000844  2F3C 0000 0001           move.l     -[A7], 0x1
  755. 0000084A  486E FFFE                pea.l      [A6 - 0x2]
  756. 0000084E  4EBA FE8E                jsr        [PC - 0x172 /* 000006DE */]
  757. label00000852:
  758. 00000852  2D40 0012                move.l     [A6 + 0x12], D0
  759. 00000856  4E5E                     unlink     A6
  760. 00000858  2F57 000A                move.l     [A7 + 0xA], [A7]
  761. 0000085C  4FEF 000A                lea.l      A7, [A7 + 0xA]
  762. 00000860  4E75                     rts
  763. 00000862  8957                     or.w       [A7], D4
  764. 00000864  5249                     addq.w     A1, 1
  765. 00000866  5445                     addq.w     D5, 2
  766. 00000868  4348                     chk.w      D1, A0
  767. 0000086A  4152                     chk.w      D0, [A2]
  768. 0000086C  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  769. 00000870  0000 206E                ori.b      D0, 0x6E /* 'n' */
  770. 00000874  000A 7000                ori.b      A2, 0x0
  771. 00000878  3018                     move.w     D0, [A0]+
  772. 0000087A  2F00                     move.l     -[A7], D0
  773. 0000087C  2F08                     move.l     -[A7], A0
  774. 0000087E  4EBA FE5E                jsr        [PC - 0x1A2 /* 000006DE */]
  775. 00000882  2D40 0012                move.l     [A6 + 0x12], D0
  776. 00000886  4E5E                     unlink     A6
  777. 00000888  2F57 000A                move.l     [A7 + 0xA], [A7]
  778. 0000088C  4FEF 000A                lea.l      A7, [A7 + 0xA]
  779. 00000890  4E75                     rts
  780. 00000892  8957                     or.w       [A7], D4
  781. 00000894  5249                     addq.w     A1, 1
  782. 00000896  5445                     addq.w     D5, 2
  783. 00000898  5445                     addq.w     D5, 2
  784. 0000089A  5854                     addq.w     [A4], 4
  785. label0000089C:
  786. 0000089C  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  787. label000008A0:
  788. 000008A0  FFFE                     .extension 0xFFE // unimplemented
  789. 000008A2  3B7C 000E E88E           move.w     [A5 - 0x1772], 0xE
  790. 000008A8  7000                     moveq.l    D0, 0x00
  791. 000008AA  302D E88E                move.w     D0, [A5 - 0x1772]
  792. 000008AE  C0FC                     mulu.w     D0, 0xFFFFFFFFFFFFFFFF
  793. 000008B0  02D0                     andi.?     [A0], 0xFFFFFFFFFFFFFFFF
  794. 000008B2  A11E                     trap       NewPtr, flags=1
  795. 000008B4  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  796. 000008B8  6708                     beq        +0xA /* 000008C2 */
  797. 000008BA  487A 0054                pea.l      [PC + 0x54 /* 00000910 */]
  798. 000008BE  4EAD 0CD2                jsr        [A5 + 0xCD2]
  799. label000008C2:
  800. 000008C2  548F                     addq.l     A7, 2
  801. 000008C4  2B48 E876                move.l     [A5 - 0x178A], A0
  802. 000008C8  302D E88E                move.w     D0, [A5 - 0x1772]
  803. 000008CC  724C                     moveq.l    D1, 0x4C
  804. 000008CE  243C 0000 00C6           move.l     D2, 0xC6
  805. 000008D4  C2C0                     mulu.w     D1, D0
  806. 000008D6  C4C0                     mulu.w     D2, D0
  807. 000008D8  5340                     subq.w     D0, 1
  808. label000008DA:
  809. 000008DA  3081                     move.w     [A0], D1
  810. 000008DC  3142 0002                move.w     [A0 + 0x2], D2
  811. 000008E0  4228 0004                clr.b      [A0 + 0x4]
  812. 000008E4  41E8 004C                lea.l      A0, [A0 + 0x4C]
  813. 000008E8  0681 0000 002E           addi.l     D1, 0x2E /* '.' */
  814. 000008EE  0682 0000 01BE           addi.l     D2, 0x1BE
  815. 000008F4  51C8 FFE4                dbf        D0, -0x1E /* 000008DA */
  816. 000008F8  42AD E882                clr.l      [A5 - 0x177E]
  817. 000008FC  42AD E886                clr.l      [A5 - 0x177A]
  818. 00000900  42AE 0012                clr.l      [A6 + 0x12]
  819. 00000904  4E5E                     unlink     A6
  820. 00000906  2F57 000A                move.l     [A7 + 0xA], [A7]
  821. 0000090A  4FEF 000A                lea.l      A7, [A7 + 0xA]
  822. 0000090E  4E75                     rts
  823. 00000910  8A49                     or.w       D5, A1
  824. 00000912  4E49                     trap       9
  825. 00000914  5449                     addq.w     A1, 2
  826. 00000916  414C                     chk.w      D0, A4
  827. 00000918  4953                     chk.w      D4, [A3]
  828. 0000091A  4520                     .invalid   2, -[A0] // invalid opcode 4 with b == 4
  829. 0000091C  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  830. 00000920  0000 202D                ori.b      D0, 0x2D /* '-' */
  831. 00000924  E882                     asr        D2, 4
  832. 00000926  671E                     beq        +0x20 /* 00000946 */
  833. 00000928  2040                     movea.l    A0, D0
  834. 0000092A  7000                     moveq.l    D0, 0x00
  835. 0000092C  0828 0000 0004           btst.b     [A0 + 0x4], 0x0
  836. 00000932  6712                     beq        +0x14 /* 00000946 */
  837. 00000934  41E8 000A                lea.l      A0, [A0 + 0xA]
  838. 00000938  2228 0014                move.l     D1, [A0 + 0x14]
  839. 0000093C  D2A8 001C                add.l      D1, [A0 + 0x1C]
  840. 00000940  D2A8 0020                add.l      D1, [A0 + 0x20]
  841. 00000944  6006                     bra        +0x8 /* 0000094C */
  842. label00000946:
  843. 00000946  203C FFFF 8000           move.l     D0, 0xFFFF8000
  844. label0000094C:
  845. 0000094C  2D40 0012                move.l     [A6 + 0x12], D0
  846. 00000950  4E5E                     unlink     A6
  847. 00000952  2F57 000A                move.l     [A7 + 0xA], [A7]
  848. 00000956  4FEF 000A                lea.l      A7, [A7 + 0xA]
  849. 0000095A  4E75                     rts
  850. 0000095C  8747 4554                pack       D3, D7, 0x4554
  851. 00000960  4650                     not.w      [A0]
  852. 00000962  4F53                     chk.w      D7, [A3]
  853. 00000964  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  854. 00000968  0000 206D                ori.b      D0, 0x6D /* 'm' */
  855. 0000096C  E882                     asr        D2, 4
  856. 0000096E  2008                     move.l     D0, A0
  857. 00000970  670E                     beq        +0x10 /* 00000980 */
  858. 00000972  0828 0000 0004           btst.b     [A0 + 0x4], 0x0
  859. 00000978  6706                     beq        +0x8 /* 00000980 */
  860. 0000097A  2028 0006                move.l     D0, [A0 + 0x6]
  861. 0000097E  6002                     bra        +0x4 /* 00000982 */
  862. label00000980:
  863. 00000980  70DA                     moveq.l    D0, 0xFFFFFFDA
  864. label00000982:
  865. 00000982  2D40 0012                move.l     [A6 + 0x12], D0
  866. 00000986  4E5E                     unlink     A6
  867. 00000988  2F57 000A                move.l     [A7 + 0xA], [A7]
  868. 0000098C  4FEF 000A                lea.l      A7, [A7 + 0xA]
  869. 00000990  4E75                     rts
  870. 00000992  8653                     or.w       D3, [A3]
  871. 00000994  4545                     chk.w      D2, D5
  872. 00000996  494E                     chk.w      D4, A6
  873. 00000998  4720                     .invalid   3, -[A0] // invalid opcode 4 with b == 4
  874. 0000099A  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  875. 0000099E  FFF4                     .extension 0xFF4 // unimplemented
  876. 000009A0  222E 000A                move.l     D1, [A6 + 0xA]
  877. 000009A4  206D E876                movea.l    A0, [A5 - 0x178A]
  878. 000009A8  302D E88E                move.w     D0, [A5 - 0x1772]
  879. 000009AC  5340                     subq.w     D0, 1
  880. label000009AE:
  881. 000009AE  0828 0000 0004           btst.b     [A0 + 0x4], 0x0
  882. 000009B4  660E                     bne        +0x10 /* 000009C4 */
  883. 000009B6  41E8 004C                lea.l      A0, [A0 + 0x4C]
  884. 000009BA  51C8 FFF2                dbf        D0, -0x10 /* 000009AE */
  885. 000009BE  41E8 FFB4                lea.l      A0, [A0 - 0x4C]
  886. 000009C2  6024                     bra        +0x26 /* 000009E8 */
  887. label000009C4:
  888. 000009C4  B2A8 0006                cmp.l      D1, [A0 + 0x6]
  889. 000009C8  41E8 004C                lea.l      A0, [A0 + 0x4C]
  890. 000009CC  57C8 FFE0                dbeq       D0, -0x22 /* 000009AE */
  891. 000009D0  41E8 FFB4                lea.l      A0, [A0 - 0x4C]
  892. 000009D4  6612                     bne        +0x14 /* 000009E8 */
  893. 000009D6  3010                     move.w     D0, [A0]
  894. 000009D8  0C30 0001 001B           cmpi.b     [A0 + D0.w + 0x1B], 0x1
  895. 000009DE  6700 0158                beq        +0x15A /* 00000B38 */
  896. 000009E2  70E9                     moveq.l    D0, 0xFFFFFFE9
  897. 000009E4  6000 0162                bra        +0x164 /* 00000B48 */
  898. label000009E8:
  899. 000009E8  206D E876                movea.l    A0, [A5 - 0x178A]
  900. 000009EC  302D E88E                move.w     D0, [A5 - 0x1772]
  901. 000009F0  5340                     subq.w     D0, 1
  902. 000009F2  222E 000A                move.l     D1, [A6 + 0xA]
  903. label000009F6:
  904. 000009F6  0828 0000 0004           btst.b     [A0 + 0x4], 0x0
  905. 000009FC  41E8 004C                lea.l      A0, [A0 + 0x4C]
  906. 00000A00  57C8 FFF4                dbeq       D0, -0xE /* 000009F6 */
  907. 00000A04  41E8 FFB4                lea.l      A0, [A0 - 0x4C]
  908. 00000A08  6706                     beq        +0x8 /* 00000A10 */
  909. 00000A0A  70D6                     moveq.l    D0, 0xFFFFFFD6
  910. 00000A0C  6000 013A                bra        +0x13C /* 00000B48 */
  911. label00000A10:
  912. 00000A10  2D48 FFFC                move.l     [A6 - 0x4], A0
  913. 00000A14  7041                     moveq.l    D0, 0x41
  914. 00000A16  2248                     movea.l    A1, A0
  915. 00000A18  43E9 000A                lea.l      A1, [A1 + 0xA]
  916. label00000A1C:
  917. 00000A1C  4219                     clr.b      [A1]+
  918. 00000A1E  51C8 FFFC                dbf        D0, -0x6 /* 00000A1C */
  919. 00000A22  4228 0042                clr.b      [A0 + 0x42]
  920. 00000A26  43ED FDB2                lea.l      A1, [A5 - 0x24E]
  921. 00000A2A  2149 0044                move.l     [A0 + 0x44], A1
  922. 00000A2E  43ED FDB6                lea.l      A1, [A5 - 0x24A]
  923. 00000A32  2149 0048                move.l     [A0 + 0x48], A1
  924. 00000A36  117C 0001 0004           move.b     [A0 + 0x4], 0x1
  925. 00000A3C  2141 0006                move.l     [A0 + 0x6], D1
  926. 00000A40  3010                     move.w     D0, [A0]
  927. 00000A42  41F0 0000                lea.l      A0, [A0 + D0.w]
  928. 00000A46  2248                     movea.l    A1, A0
  929. 00000A48  7079                     moveq.l    D0, 0x79
  930. label00000A4A:
  931. 00000A4A  4219                     clr.b      [A1]+
  932. 00000A4C  51C8 FFFC                dbf        D0, -0x6 /* 00000A4A */
  933. 00000A50  A214                     trap       GetVol/PBHGetVol/HGetVol, flags=2
  934. 00000A52  48C0                     ext.l      D0
  935. 00000A54  4A80                     tst.l      D0
  936. 00000A56  6600 00E8                bne        +0xEA /* 00000B40 */
  937. 00000A5A  206E FFFC                movea.l    A0, [A6 - 0x4]
  938. 00000A5E  3010                     move.w     D0, [A0]
  939. 00000A60  226E 000A                movea.l    A1, [A6 + 0xA]
  940. 00000A64  D3ED E8A8                add.l      A1, [A5 - 0x1758]
  941. 00000A68  4A29 0008                tst.b      [A1 + 0x8]
  942. 00000A6C  670E                     beq        +0x10 /* 00000A7C */
  943. 00000A6E  40E7                     move.w     -[A7], SR
  944. 00000A70  3F3C 0009                move.w     -[A7], 0x9 /* '\t' */
  945. 00000A74  487A 00E8                pea.l      [PC + 0xE8 /* 00000B5E, pstring "File name is too long!" */]
  946. 00000A78  4EAD 0B62                jsr        [A5 + 0xB62]
  947. label00000A7C:
  948. 00000A7C  43E9 0009                lea.l      A1, [A1 + 0x9]
  949. 00000A80  2189 0012                move.l     [A0 + D0.w + 0x12], A1
  950. 00000A84  2D49 FFF8                move.l     [A6 - 0x8], A1
  951. 00000A88  41F0 0000                lea.l      A0, [A0 + D0.w]
  952. 00000A8C  2D68 0030 FFF4           move.l     [A6 - 0xC], [A0 + 0x30]
  953. 00000A92  A20C                     trap       GetFileInfo/PBHGetFInfo/HGetFileInfo, flags=2
  954. 00000A94  48C0                     ext.l      D0
  955. 00000A96  4A80                     tst.l      D0
  956. 00000A98  6600 00A6                bne        +0xA8 /* 00000B40 */
  957. 00000A9C  216E FFF4 0030           move.l     [A0 + 0x30], [A6 - 0xC]
  958. 00000AA2  48C0                     ext.l      D0
  959. 00000AA4  4A80                     tst.l      D0
  960. 00000AA6  6600 0098                bne        +0x9A /* 00000B40 */
  961. 00000AAA  0CA8 5445 5854 0020      cmpi.l     [A0 + 0x20], 0x54455854 /* 'TEXT' */
  962. 00000AB2  6706                     beq        +0x8 /* 00000ABA */
  963. 00000AB4  70DC                     moveq.l    D0, 0xFFFFFFDC
  964. 00000AB6  6000 0088                bra        +0x8A /* 00000B40 */
  965. label00000ABA:
  966. 00000ABA  206E FFFC                movea.l    A0, [A6 - 0x4]
  967. 00000ABE  3010                     move.w     D0, [A0]
  968. 00000AC0  41F0 0000                lea.l      A0, [A0 + D0.w]
  969. 00000AC4  2248                     movea.l    A1, A0
  970. 00000AC6  7079                     moveq.l    D0, 0x79
  971. label00000AC8:
  972. 00000AC8  4219                     clr.b      [A1]+
  973. 00000ACA  51C8 FFFC                dbf        D0, -0x6 /* 00000AC8 */
  974. 00000ACE  A214                     trap       GetVol/PBHGetVol/HGetVol, flags=2
  975. 00000AD0  48C0                     ext.l      D0
  976. 00000AD2  4A80                     tst.l      D0
  977. 00000AD4  6600 006A                bne        +0x6C /* 00000B40 */
  978. 00000AD8  206E FFFC                movea.l    A0, [A6 - 0x4]
  979. 00000ADC  3010                     move.w     D0, [A0]
  980. 00000ADE  3228 0002                move.w     D1, [A0 + 0x2]
  981. 00000AE2  43F0 1000                lea.l      A1, [A0 + D1.w]
  982. 00000AE6  41F0 0000                lea.l      A0, [A0 + D0.w]
  983. 00000AEA  216E FFF8 0012           move.l     [A0 + 0x12], [A6 - 0x8]
  984. 00000AF0  117C 0001 001B           move.b     [A0 + 0x1B], 0x1
  985. 00000AF6  2149 001C                move.l     [A0 + 0x1C], A1
  986. 00000AFA  A200                     trap       OpenSlot, flags=2
  987. 00000AFC  48C0                     ext.l      D0
  988. 00000AFE  4A80                     tst.l      D0
  989. 00000B00  6600 003E                bne        +0x40 /* 00000B40 */
  990. 00000B04  4268 002C                clr.w      [A0 + 0x2C]
  991. 00000B08  42A8 002E                clr.l      [A0 + 0x2E]
  992. 00000B0C  A044                     trap       SetFPos
  993. 00000B0E  48C0                     ext.l      D0
  994. 00000B10  4A80                     tst.l      D0
  995. 00000B12  6600 002C                bne        +0x2E /* 00000B40 */
  996. 00000B16  203C 0000 2801           move.l     D0, 0x2801
  997. 00000B1C  A122                     trap       NewHandle, flags=1
  998. 00000B1E  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  999. 00000B22  6708                     beq        +0xA /* 00000B2C */
  1000. 00000B24  487A 0032                pea.l      [PC + 0x32 /* 00000B58 */]
  1001. 00000B28  4EAD 0CD2                jsr        [A5 + 0xCD2]
  1002. label00000B2C:
  1003. 00000B2C  548F                     addq.l     A7, 2
  1004. 00000B2E  2008                     move.l     D0, A0
  1005. 00000B30  206E FFFC                movea.l    A0, [A6 - 0x4]
  1006. 00000B34  2140 0016                move.l     [A0 + 0x16], D0
  1007. label00000B38:
  1008. 00000B38  2B48 E882                move.l     [A5 - 0x177E], A0
  1009. 00000B3C  7000                     moveq.l    D0, 0x00
  1010. 00000B3E  6008                     bra        +0xA /* 00000B48 */
  1011. label00000B40:
  1012. 00000B40  206E FFFC                movea.l    A0, [A6 - 0x4]
  1013. 00000B44  4228 0004                clr.b      [A0 + 0x4]
  1014. label00000B48:
  1015. 00000B48  2D40 0012                move.l     [A6 + 0x12], D0
  1016. 00000B4C  4E5E                     unlink     A6
  1017. 00000B4E  2F57 000A                move.l     [A7 + 0xA], [A7]
  1018. 00000B52  4FEF 000A                lea.l      A7, [A7 + 0xA]
  1019. 00000B56  4E75                     rts
  1020. 00000B58  8353                     or.w       [A3], D1
  1021. 00000B5A  4545                     chk.w      D2, D5
  1022. 00000B5C  0000 1646                ori.b      D0, 0x46 /* 'F' */
  1023. 00000B60  696C                     bvs        +0x6E /* 00000BCE */
  1024. 00000B62  6520                     bcs        +0x22 /* 00000B84 */
  1025. 00000B64  6E61                     bgt        +0x63 /* 00000BC7 */
  1026. 00000B66  6D65                     blt        +0x67 /* 00000BCD */
  1027. 00000B68  2069 7320                movea.l    A0, [A1 + 0x7320]
  1028. 00000B6C  746F                     moveq.l    D2, 0x6F
  1029. 00000B6E  6F20                     ble        +0x22 /* 00000B90 */
  1030. 00000B70  6C6F                     bge        +0x71 /* 00000BE1 */
  1031. 00000B72  6E67                     bgt        +0x69 /* 00000BDB */
  1032. 00000B74  2100                     move.l     -[A0], D0
  1033. 00000B76  4E56 0000                link       A6, 0
  1034. 00000B7A  202D E882                move.l     D0, [A5 - 0x177E]
  1035. 00000B7E  6700 002C                beq        +0x2E /* 00000BAC */
  1036. 00000B82  2040                     movea.l    A0, D0
  1037. label00000B84:
  1038. 00000B84  4228 0004                clr.b      [A0 + 0x4]
  1039. 00000B88  3010                     move.w     D0, [A0]
  1040. 00000B8A  41F0 0000                lea.l      A0, [A0 + D0.w]
  1041. 00000B8E  A001                     trap       Close
  1042. label00000B90:
  1043. 00000B90  661C                     bne        +0x1E /* 00000BAE */
  1044. 00000B92  206D E882                movea.l    A0, [A5 - 0x177E]
  1045. 00000B96  2068 0016                movea.l    A0, [A0 + 0x16]
  1046. 00000B9A  A023                     trap       DisposHandle/DisposeHandle
  1047. 00000B9C  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  1048. 00000BA0  6708                     beq        +0xA /* 00000BAA */
  1049. 00000BA2  487A 0020                pea.l      [PC + 0x20 /* 00000BC4 */]
  1050. 00000BA6  4EAD 0CD2                jsr        [A5 + 0xCD2]
  1051. label00000BAA:
  1052. 00000BAA  548F                     addq.l     A7, 2
  1053. label00000BAC:
  1054. 00000BAC  7000                     moveq.l    D0, 0x00
  1055. label00000BAE:
  1056. 00000BAE  48C0                     ext.l      D0
  1057. 00000BB0  2D40 0012                move.l     [A6 + 0x12], D0
  1058. 00000BB4  42AD E882                clr.l      [A5 - 0x177E]
  1059. 00000BB8  4E5E                     unlink     A6
  1060. 00000BBA  2F57 000A                move.l     [A7 + 0xA], [A7]
  1061. 00000BBE  4FEF 000A                lea.l      A7, [A7 + 0xA]
  1062. 00000BC2  4E75                     rts
  1063. 00000BC4  8453                     or.w       D2, [A3]
  1064. 00000BC6  4545                     chk.w      D2, D5
  1065. label00000BC7: // (misaligned)
  1066. 00000BC8  4E20                     .invalid   // invalid opcode 4
  1067. 00000BCA  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1068. label00000BCD: // (misaligned)
  1069. label00000BCE:
  1070. 00000BCE  0000 206D                ori.b      D0, 0x6D /* 'm' */
  1071. 00000BD2  E886                     asr        D6, 4
  1072. 00000BD4  2008                     move.l     D0, A0
  1073. 00000BD6  6714                     beq        +0x16 /* 00000BEC */
  1074. 00000BD8  2028 0006                move.l     D0, [A0 + 0x6]
  1075. label00000BDB: // (misaligned)
  1076. label00000BDC:
  1077. 00000BDC  2D40 0012                move.l     [A6 + 0x12], D0
  1078. 00000BE0  4E5E                     unlink     A6
  1079. label00000BE1: // (misaligned)
  1080. 00000BE2  2F57 000A                move.l     [A7 + 0xA], [A7]
  1081. 00000BE6  4FEF 000A                lea.l      A7, [A7 + 0xA]
  1082. 00000BEA  4E75                     rts
  1083. label00000BEC:
  1084. 00000BEC  70DA                     moveq.l    D0, 0xFFFFFFDA
  1085. 00000BEE  60EC                     bra        -0x12 /* 00000BDC */
  1086. 00000BF0  8754                     or.w       [A4], D3
  1087. 00000BF2  454C                     chk.w      D2, A4
  1088. 00000BF4  4C49 4E47                movem.l    A6,A3,A2,A1,D6,D2,D1,D0, A1
  1089. 00000BF8  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  1090. 00000BFC  FEF6                     .extension 0xEF6 // unimplemented
  1091. 00000BFE  222E 000A                move.l     D1, [A6 + 0xA]
  1092. 00000C02  206D E876                movea.l    A0, [A5 - 0x178A]
  1093. 00000C06  302D E88E                move.w     D0, [A5 - 0x1772]
  1094. 00000C0A  5340                     subq.w     D0, 1
  1095. label00000C0C:
  1096. 00000C0C  0828 0000 0004           btst.b     [A0 + 0x4], 0x0
  1097. 00000C12  660E                     bne        +0x10 /* 00000C22 */
  1098. 00000C14  41E8 004C                lea.l      A0, [A0 + 0x4C]
  1099. 00000C18  51C8 FFF2                dbf        D0, -0x10 /* 00000C0C */
  1100. 00000C1C  41E8 FFB4                lea.l      A0, [A0 - 0x4C]
  1101. 00000C20  6024                     bra        +0x26 /* 00000C46 */
  1102. label00000C22:
  1103. 00000C22  B2A8 0006                cmp.l      D1, [A0 + 0x6]
  1104. 00000C26  41E8 004C                lea.l      A0, [A0 + 0x4C]
  1105. 00000C2A  57C8 FFE0                dbeq       D0, -0x22 /* 00000C0C */
  1106. 00000C2E  41E8 FFB4                lea.l      A0, [A0 - 0x4C]
  1107. 00000C32  6612                     bne        +0x14 /* 00000C46 */
  1108. 00000C34  3010                     move.w     D0, [A0]
  1109. 00000C36  0C30 0002 001B           cmpi.b     [A0 + D0.w + 0x1B], 0x2
  1110. 00000C3C  6700 0154                beq        +0x156 /* 00000D92 */
  1111. 00000C40  70C3                     moveq.l    D0, 0xFFFFFFC3
  1112. 00000C42  6000 015E                bra        +0x160 /* 00000DA2 */
  1113. label00000C46:
  1114. 00000C46  206D E876                movea.l    A0, [A5 - 0x178A]
  1115. 00000C4A  302D E88E                move.w     D0, [A5 - 0x1772]
  1116. 00000C4E  5340                     subq.w     D0, 1
  1117. 00000C50  222E 000A                move.l     D1, [A6 + 0xA]
  1118. label00000C54:
  1119. 00000C54  0828 0000 0004           btst.b     [A0 + 0x4], 0x0
  1120. 00000C5A  41E8 004C                lea.l      A0, [A0 + 0x4C]
  1121. 00000C5E  57C8 FFF4                dbeq       D0, -0xE /* 00000C54 */
  1122. 00000C62  41E8 FFB4                lea.l      A0, [A0 - 0x4C]
  1123. 00000C66  6706                     beq        +0x8 /* 00000C6E */
  1124. 00000C68  70D6                     moveq.l    D0, 0xFFFFFFD6
  1125. 00000C6A  6000 0136                bra        +0x138 /* 00000DA2 */
  1126. label00000C6E:
  1127. 00000C6E  2D48 FFFC                move.l     [A6 - 0x4], A0
  1128. 00000C72  117C 0001 0004           move.b     [A0 + 0x4], 0x1
  1129. 00000C78  2141 0006                move.l     [A0 + 0x6], D1
  1130. 00000C7C  3010                     move.w     D0, [A0]
  1131. 00000C7E  41F0 0000                lea.l      A0, [A0 + D0.w]
  1132. 00000C82  2248                     movea.l    A1, A0
  1133. 00000C84  7079                     moveq.l    D0, 0x79
  1134. label00000C86:
  1135. 00000C86  4219                     clr.b      [A1]+
  1136. 00000C88  51C8 FFFC                dbf        D0, -0x6 /* 00000C86 */
  1137. 00000C8C  A214                     trap       GetVol/PBHGetVol/HGetVol, flags=2
  1138. 00000C8E  48C0                     ext.l      D0
  1139. 00000C90  4A80                     tst.l      D0
  1140. 00000C92  6600 0106                bne        +0x108 /* 00000D9A */
  1141. 00000C96  206E FFFC                movea.l    A0, [A6 - 0x4]
  1142. 00000C9A  3010                     move.w     D0, [A0]
  1143. 00000C9C  226E 000A                movea.l    A1, [A6 + 0xA]
  1144. 00000CA0  D3ED E8A8                add.l      A1, [A5 - 0x1758]
  1145. 00000CA4  4A29 0008                tst.b      [A1 + 0x8]
  1146. 00000CA8  670E                     beq        +0x10 /* 00000CB8 */
  1147. 00000CAA  40E7                     move.w     -[A7], SR
  1148. 00000CAC  3F3C 0009                move.w     -[A7], 0x9 /* '\t' */
  1149. 00000CB0  487A 0108                pea.l      [PC + 0x108 /* 00000DBA, pstring "File name is too long!" */]
  1150. 00000CB4  4EAD 0B62                jsr        [A5 + 0xB62]
  1151. label00000CB8:
  1152. 00000CB8  43E9 0009                lea.l      A1, [A1 + 0x9]
  1153. 00000CBC  2189 0012                move.l     [A0 + D0.w + 0x12], A1
  1154. 00000CC0  41F0 0000                lea.l      A0, [A0 + D0.w]
  1155. 00000CC4  2D68 0030 FFF8           move.l     [A6 - 0x8], [A0 + 0x30]
  1156. 00000CCA  A20C                     trap       GetFileInfo/PBHGetFInfo/HGetFileInfo, flags=2
  1157. 00000CCC  216E FFF8 0030           move.l     [A0 + 0x30], [A6 - 0x8]
  1158. 00000CD2  0C40 FFD5                cmpi.w     D0, 0xFFD5
  1159. 00000CD6  664A                     bne        +0x4C /* 00000D22 */
  1160. 00000CD8  A208                     trap       Create/PBHCreate/HCreate, flags=2
  1161. 00000CDA  48C0                     ext.l      D0
  1162. 00000CDC  4A80                     tst.l      D0
  1163. 00000CDE  6600 00BA                bne        +0xBC /* 00000D9A */
  1164. 00000CE2  2808                     move.l     D4, A0
  1165. 00000CE4  4FEF FFFC                lea.l      A7, [A7 - 0x4]
  1166. 00000CE8  204F                     movea.l    A0, A7
  1167. 00000CEA  A039                     trap       ReadDateTime
  1168. 00000CEC  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  1169. 00000CF0  6708                     beq        +0xA /* 00000CFA */
  1170. 00000CF2  487A 00BE                pea.l      [PC + 0xBE /* 00000DB2 */]
  1171. 00000CF6  4EAD 0CD2                jsr        [A5 + 0xCD2]
  1172. label00000CFA:
  1173. 00000CFA  548F                     addq.l     A7, 2
  1174. 00000CFC  2044                     movea.l    A0, D4
  1175. 00000CFE  215F 0048                move.l     [A0 + 0x48], [A7]+
  1176. 00000D02  3F3C 0080                move.w     -[A7], 0x80
  1177. 00000D06  3F3C 000F                move.w     -[A7], 0xF
  1178. 00000D0A  486E FEF7                pea.l      [A6 - 0x109]
  1179. 00000D0E  4EAD 0502                jsr        [A5 + 0x502]
  1180. 00000D12  216E FEF8 0024           move.l     [A0 + 0x24], [A6 - 0x108]
  1181. 00000D18  217C 5445 5854 0020      move.l     [A0 + 0x20], 0x54455854 /* 'TEXT' */
  1182. 00000D20  A20D                     trap       SetFileInfo/PBHSetFInfo/HSetFileInfo, flags=2
  1183. label00000D22:
  1184. 00000D22  48C0                     ext.l      D0
  1185. 00000D24  4A80                     tst.l      D0
  1186. 00000D26  6600 0072                bne        +0x74 /* 00000D9A */
  1187. 00000D2A  0CA8 5445 5854 0020      cmpi.l     [A0 + 0x20], 0x54455854 /* 'TEXT' */
  1188. 00000D32  6706                     beq        +0x8 /* 00000D3A */
  1189. 00000D34  70DC                     moveq.l    D0, 0xFFFFFFDC
  1190. 00000D36  6000 0062                bra        +0x64 /* 00000D9A */
  1191. label00000D3A:
  1192. 00000D3A  117C 0002 001B           move.b     [A0 + 0x1B], 0x2
  1193. 00000D40  226E FFFC                movea.l    A1, [A6 - 0x4]
  1194. 00000D44  3229 0002                move.w     D1, [A1 + 0x2]
  1195. 00000D48  43F1 1000                lea.l      A1, [A1 + D1.w]
  1196. 00000D4C  2149 001C                move.l     [A0 + 0x1C], A1
  1197. 00000D50  A200                     trap       OpenSlot, flags=2
  1198. 00000D52  48C0                     ext.l      D0
  1199. 00000D54  4A80                     tst.l      D0
  1200. 00000D56  6600 0042                bne        +0x44 /* 00000D9A */
  1201. 00000D5A  42A8 001C                clr.l      [A0 + 0x1C]
  1202. 00000D5E  A012                     trap       SetEOF
  1203. 00000D60  48C0                     ext.l      D0
  1204. 00000D62  4A80                     tst.l      D0
  1205. 00000D64  6600 0034                bne        +0x36 /* 00000D9A */
  1206. 00000D68  4268 002C                clr.w      [A0 + 0x2C]
  1207. 00000D6C  203C 0000 0400           move.l     D0, 0x400
  1208. 00000D72  A122                     trap       NewHandle, flags=1
  1209. 00000D74  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  1210. 00000D78  6708                     beq        +0xA /* 00000D82 */
  1211. 00000D7A  487A 0036                pea.l      [PC + 0x36 /* 00000DB2 */]
  1212. 00000D7E  4EAD 0CD2                jsr        [A5 + 0xCD2]
  1213. label00000D82:
  1214. 00000D82  548F                     addq.l     A7, 2
  1215. 00000D84  2248                     movea.l    A1, A0
  1216. 00000D86  206E FFFC                movea.l    A0, [A6 - 0x4]
  1217. 00000D8A  2149 0016                move.l     [A0 + 0x16], A1
  1218. 00000D8E  42A8 001A                clr.l      [A0 + 0x1A]
  1219. label00000D92:
  1220. 00000D92  2B48 E886                move.l     [A5 - 0x177A], A0
  1221. 00000D96  7000                     moveq.l    D0, 0x00
  1222. 00000D98  6008                     bra        +0xA /* 00000DA2 */
  1223. label00000D9A:
  1224. 00000D9A  206E FFFC                movea.l    A0, [A6 - 0x4]
  1225. 00000D9E  4228 0004                clr.b      [A0 + 0x4]
  1226. label00000DA2:
  1227. 00000DA2  2D40 0012                move.l     [A6 + 0x12], D0
  1228. 00000DA6  4E5E                     unlink     A6
  1229. 00000DA8  2F57 000A                move.l     [A7 + 0xA], [A7]
  1230. 00000DAC  4FEF 000A                lea.l      A7, [A7 + 0xA]
  1231. 00000DB0  4E75                     rts
  1232. 00000DB2  8454                     or.w       D2, [A4]
  1233. 00000DB4  454C                     chk.w      D2, A4
  1234. 00000DB6  4C20 0000                movem.w    <none>, -[A0]
  1235. 00000DBA  1646                     movea.b    A3, D6
  1236. 00000DBC  696C                     bvs        +0x6E /* 00000E2A */
  1237. 00000DBE  6520                     bcs        +0x22 /* 00000DE0 */
  1238. 00000DC0  6E61                     bgt        +0x63 /* 00000E23 */
  1239. 00000DC2  6D65                     blt        +0x67 /* 00000E29 */
  1240. 00000DC4  2069 7320                movea.l    A0, [A1 + 0x7320]
  1241. 00000DC8  746F                     moveq.l    D2, 0x6F
  1242. 00000DCA  6F20                     ble        +0x22 /* 00000DEC */
  1243. 00000DCC  6C6F                     bge        +0x71 /* 00000E3D */
  1244. 00000DCE  6E67                     bgt        +0x69 /* 00000E37 */
  1245. 00000DD0  2100                     move.l     -[A0], D0
  1246. 00000DD2  4E56 0000                link       A6, 0
  1247. 00000DD6  7000                     moveq.l    D0, 0x00
  1248. 00000DD8  202D E886                move.l     D0, [A5 - 0x177A]
  1249. 00000DDC  6700 007E                beq        +0x80 /* 00000E5C */
  1250. label00000DE0:
  1251. 00000DE0  4EBA F9AA                jsr        [PC - 0x656 /* 0000078C */]
  1252. 00000DE4  6600 0076                bne        +0x78 /* 00000E5C */
  1253. 00000DE8  206D E886                movea.l    A0, [A5 - 0x177A]
  1254. label00000DEC:
  1255. 00000DEC  2068 0016                movea.l    A0, [A0 + 0x16]
  1256. 00000DF0  A023                     trap       DisposHandle/DisposeHandle
  1257. 00000DF2  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  1258. 00000DF6  6708                     beq        +0xA /* 00000E00 */
  1259. 00000DF8  487A 0076                pea.l      [PC + 0x76 /* 00000E70 */]
  1260. 00000DFC  4EAD 0CD2                jsr        [A5 + 0xCD2]
  1261. label00000E00:
  1262. 00000E00  548F                     addq.l     A7, 2
  1263. 00000E02  206D E886                movea.l    A0, [A5 - 0x177A]
  1264. 00000E06  4228 0004                clr.b      [A0 + 0x4]
  1265. 00000E0A  3010                     move.w     D0, [A0]
  1266. 00000E0C  41F0 0000                lea.l      A0, [A0 + D0.w]
  1267. 00000E10  42A8 002E                clr.l      [A0 + 0x2E]
  1268. 00000E14  2628 0030                move.l     D3, [A0 + 0x30]
  1269. 00000E18  A20C                     trap       GetFileInfo/PBHGetFInfo/HGetFileInfo, flags=2
  1270. 00000E1A  48C0                     ext.l      D0
  1271. 00000E1C  4A80                     tst.l      D0
  1272. 00000E1E  6600 003C                bne        +0x3E /* 00000E5C */
  1273. 00000E22  2143 0030                move.l     [A0 + 0x30], D3
  1274. label00000E23: // (misaligned)
  1275. 00000E26  2808                     move.l     D4, A0
  1276. 00000E28  4FEF FFFC                lea.l      A7, [A7 - 0x4]
  1277. // begin alternate branch 00000E2A-00000E2C
  1278. label00000E2A:
  1279. 00000E2A  FFFC                     .extension 0xFFC // unimplemented
  1280. // end alternate branch 00000E2A-00000E2C
  1281. label00000E29: // (misaligned)
  1282. label00000E2A: // (misaligned)
  1283. 00000E2C  204F                     movea.l    A0, A7
  1284. 00000E2E  A039                     trap       ReadDateTime
  1285. 00000E30  3F38 0220                move.w     -[A7], [0x00000220 /* MemErr */]
  1286. 00000E34  6708                     beq        +0xA /* 00000E3E */
  1287. 00000E36  487A 0038                pea.l      [PC + 0x38 /* 00000E70 */]
  1288. label00000E37: // (misaligned)
  1289. 00000E3A  4EAD 0CD2                jsr        [A5 + 0xCD2]
  1290. label00000E3D: // (misaligned)
  1291. label00000E3E:
  1292. 00000E3E  548F                     addq.l     A7, 2
  1293. 00000E40  2044                     movea.l    A0, D4
  1294. 00000E42  215F 004C                move.l     [A0 + 0x4C], [A7]+
  1295. 00000E46  A20D                     trap       SetFileInfo/PBHSetFInfo/HSetFileInfo, flags=2
  1296. 00000E48  48C0                     ext.l      D0
  1297. 00000E4A  4A80                     tst.l      D0
  1298. 00000E4C  6600 000E                bne        +0x10 /* 00000E5C */
  1299. 00000E50  A001                     trap       Close
  1300. 00000E52  48C0                     ext.l      D0
  1301. 00000E54  4A80                     tst.l      D0
  1302. 00000E56  6600 0004                bne        +0x6 /* 00000E5C */
  1303. 00000E5A  7000                     moveq.l    D0, 0x00
  1304. label00000E5C:
  1305. 00000E5C  2D40 0012                move.l     [A6 + 0x12], D0
  1306. 00000E60  42AD E886                clr.l      [A5 - 0x177A]
  1307. 00000E64  4E5E                     unlink     A6
  1308. 00000E66  2F57 000A                move.l     [A7 + 0xA], [A7]
  1309. 00000E6A  4FEF 000A                lea.l      A7, [A7 + 0xA]
  1310. 00000E6E  4E75                     rts
  1311. 00000E70  8454                     or.w       D2, [A4]
  1312. 00000E72  4F4C                     chk.w      D7, A4
  1313. 00000E74  4420                     neg.b      -[A0]
  1314. 00000E76  0000                     .incomplete
  1315.